大家辛苦了,看完了超級多算法跟數學的我們。
真的要給自己一點鼓勵。
但接下來的非對稱式密碼學才是數學的深淵。
其實說起來,非對稱式的加密比起對稱是來說是相對簡單的。
除了『加密解密用不同金鑰』之外,只要能理解數學的機制就是蠻簡單的。
看不到XOR,看不到很直白的替換,也沒發現很簡單位移。
但依舊要達成能夠使用的前提要件:
一樣的我們把對稱的優點跟缺點都列一下:
雖然說有蠻多的缺點,但光是一個十分重要的優點,基本上就能打趴所有缺點了。
而且是不可取代性的。
我們先不看那些演算,而是討論非對稱加密的一些前提跟討論。
接下來我會講的『主流非對稱式』的方案是下面兩個:
但在討論這兩個之前,我想跟大家聊聊,那就是安全性的比較。
在我們學習對稱式的時候多多少少能發覺到,3DES、RC5、AES等加密方案,那個才是最好的、最安全的?
當大家在操作一些能有選擇的加密方法時,多多少少應該會思考『那個比較好』。
我們知道了原理,同時也驗證了要破解都很難。
但是哪一個才是最好、最安全的、最快的?
考量各種方法的加密速度、加密效率、加密安全度、加密的結構、加密的算法可能等,終究得出『其實都很安全,目前電腦的速度來說都很快』,很難給出一個確切的答案。
通常最後都會選擇現代最為主流的加密法,大家最常用、最推薦的。
實際上,密碼學裡很多都是這樣,本質上來說根本沒什麼方法去突破。
而接下來的章節會講到的非對稱的加密,聽完後你會對這樣的算法抱有疑問。
非對稱的算法來說,都是『很難』卻又沒有對稱的難。
如果說量子電腦來說,我們嘗試把這一些數字加大如何?
其實大家也無法證明只要把數字加大,它一定是線性地提升困難。
在非對稱的領域中,效率的考驗更是比對稱式來的重要。
而大家看當這裡對於非對稱式的心裡預期也有了。
本質上,非對稱的加密,就是利用數學上很困難的問題來做加密的。
RSA是質因數問題。
Diffie–Hellman是離散對數問題或離散對數橢圓曲線(ECC)問題。
接下來讓我們進入數學的世界吧!
我其實一直有一個疑問,到目前為止,很多的資訊跟資料其實也是從論文、文章來的。
雖然是用自己的話寫出來,並做出一些分析。
但實際上很大一部份的內容其實也是整理他人的文章。
那到底怎麼樣才算是抄襲或者說內容引用過多。
接下來的非對稱基本上更加的類似於引用文章的內容,用自己的話再做一次整理。
但公式、技術其實很多都有官方的Document,而且完整度都比大多數的人整理的還要完整。
其實密碼學很多的資料也是整理了很多他人開發的資料。
不如說目前的技術都是整理很多方案。
每一次寫文章其實心蠻虛的,因為很多資料都有了。
我很大的一部份其實就是重複,只是把東西再用自己的方法講過一遍。
但同時我又希望能在這網站有這樣的系列,讓大家能完整的學習。
我先跟大家預告一下,之後的文章水分應該會很多。
而且做為工程師,我又蠻懶得為大家去做數學上的證明跟分析。
首先那不是我的專長之外,有些不是數學夠強的人基本上就是連看都不看,看了也只是喔喔這樣。
再加上我很擔心自己出錯,尤其證明這東西必需要花很常時間去完補數學知識。
光是寫一篇文章就花了不少時間在分析上。
不知道大家希望看到什麼樣的文章,希望有人能給我一點回饋。
謝謝~